package done.easy_501_600;

import com.study.common.Node;
import lombok.extern.slf4j.Slf4j;
import org.junit.Test;

import java.util.List;

/**
 * 589. N-ary Tree Preorder Traversal
 * 给定一个 N 叉树，返回其节点值的前序遍历。
 * <p>
 * 例如，给定一个 3叉树 :
 * <p>
 * 1
 * / | \
 * 3  2  4
 * / \
 * 5   6
 * <p>
 * 返回其前序遍历: [1, 3, 5, 6, 2, 4]。
 *
 * @author wangxiaozhe
 */
@Slf4j
public class N_aryTreePreorderTraversal {

    @SuppressWarnings("all")
    public List<Integer> preorder(Node root) {
        // 190325 first
        return null;
    }

    @Test
    public void test() {
        Node head = new Node(1,
                new Node(3,
                        5, 6), new Node(2), new Node(4));
        log.info("result:{}", preorder(head));
    }
}







































/*
public List<Integer> preorder(Node root) {
    if(root == null){
        return res;
    }
    // 当前节点
    res.add(root.val);

    if (root.children!=null) {
        // 从前到后（从左到右）遍历子节点
        for (Node child : root.children) {
            preorder(child);
        }
    }
    return res;
}
*/
